// Plugin
import request from '@/utils/request'
import * as utils from '@/utils';
import Video from 'video.js';


export default {
	/**
	 * 自定义方法
	 * 组件内使用： this.$validator, this.$http
	 * 全局使用： Vue.validator, Vue.http
	 */
	install(Vue) {
		const attr = {
			configurable: false, // 可以配置
			writable: true,     // 可以读写
			enumerable: false   // 可以枚举
		}
		// const $validator = { ...attr, value: utils.validator }		// 正则验证
		// const $checker = { ...attr, value: utils.checker }		// 正则验证
		const $utils = { ...attr, value: utils }		// 自定义方法
		const $http = { ...attr, value: request }  // http请求
		const $video = { ...attr, value: Video }  // http请求
		

		Object.defineProperties(Vue.config.globalProperties, {
			// $validator, $checker, 
			$utils, $http, $video
		})
		Object.defineProperties(Vue, {
			// validator: $validator,
			// checker: $checker,
			utils: $utils,
			http: $http,
			video: $video,
		})
	}
}
